//
//  JJInfiniteTableView.h
//  TableViewInfinite
//
//  Created by jxf on 16/2/21.
//  Copyright © 2016年 JJ.sevn. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "JJInfiniteTitleBar.h"
@class JJInfiniteTableView;

@protocol JJInfiniteTableViewDataSource <NSObject>

@required
- (NSInteger)numberOfItemsAtInfiniteTableView:(JJInfiniteTableView *)infiniteTableView;

- (NSInteger)infiniteTableView:(JJInfiniteTableView *)infiniteTableView numberOfCellsAtIndexPart:(NSInteger)index;

- (UITableViewCell *)infiniteTableView:(JJInfiniteTableView *)infiniteTableView andTableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath andItemIndex:(NSInteger)index;
@end

@protocol JJInfiniteTableViewDelegate <NSObject>

@optional
- (void)infiniteTableView:(JJInfiniteTableView *)infiniteTableView didSelectedRowAtIndexPath:(NSIndexPath *)indexPath;
// closeInfiniteView = YES, 抽屉效果
- (UIView *)leftDrawerViewWithInfiniteTableView:(JJInfiniteTableView *)infiniteTableView;
- (CGFloat)widthForLeftDrawerViewWithInfiniteTableView:(JJInfiniteTableView *)infiniteTableView;
- (UIView *)rightDrawerViewWithInfiniteTableView:(JJInfiniteTableView *)infiniteTableView;
- (CGFloat)widthForRightDrawerViewWithInfiniteTableView:(JJInfiniteTableView *)infiniteTableView;
@end


@interface JJInfiniteTableView : UIView
// 实际需求应该是一个 url数组,自行修改
@property(nonatomic, weak) id<JJInfiniteTableViewDelegate> delegate;
@property(nonatomic, weak) id<JJInfiniteTableViewDataSource> dataSource;
@property(nonatomic, weak, readonly) JJInfiniteTitleBar * titleBar;
@property(nonatomic, assign) CGFloat titleBarHeight;
@property(nonatomic, assign) BOOL closeInfiniteView;
@end
